在不同操作系統中,使用命令行啟動 Logstash 的方式略有不同。以下是具體步驟和示例:
1. Linux/macOS 系統
前提條件
- 已安裝 Java(版本 8 或 11,Logstash 依賴 Java 運行環境)。
- 已下載并解壓 Logstash(或通過包管理器安裝)。
啟動步驟
-
進入 Logstash 目錄:bash?????
cd /path/to/logstash
???????????????例如,如果下載并解壓到/opt/logstash-7.17.0
,則執行:bash?????cd /opt/logstash-7.17.0
? -
使用配置文件啟動:bash?????
./bin/logstash -f /path/to/your/config.conf
?-f
:指定配置文件路徑(如/etc/logstash/conf.d/
目錄下的配置文件)。- 示例:使用當前目錄下的
logstash.conf
配置文件:bash?????./bin/logstash -f logstash.conf
?
-
后臺運行(守護進程模式):bash?????
nohup ./bin/logstash -f /path/to/your/config.conf &
?- 使用
nohup
和&
使 Logstash 在后臺持續運行。
- 使用
2. Windows 系統
前提條件
- 已安裝 Java(版本 8 或 11)。
- 已下載并解壓 Logstash。
啟動步驟
-
打開命令提示符(CMD)或 PowerShell:
- 按
Win + R
,輸入cmd
或powershell
并回車。
- 按
-
進入 Logstash 目錄:powershell?????
cd C:\path\to\logstash
?例如:powershell?????cd C:\logstash-7.17.0
? -
使用配置文件啟動:powershell?????
.\bin\logstash.bat -f C:\path\to\your\config.conf
?- 示例:使用當前目錄下的
logstash.conf
:powershell?????.\bin\logstash.bat -f logstash.conf
?
- 示例:使用當前目錄下的
-
后臺運行(可選):
- 可使用第三方工具(如
nssm
)將 Logstash 注冊為 Windows 服務。
- 可使用第三方工具(如
3. 常用啟動參數
參數 | 說明 |
---|---|
-f |
指定配置文件路徑(如-f /etc/logstash/conf.d/input.conf )。 |
-t |
測試配置文件語法是否正確,不啟動服務(如./bin/logstash -t -f ... )。 |
--config.test_and_exit |
同上,測試配置后退出。 |
--path.data |
指定數據存儲路徑(默認LOGSTASH_HOME/data )。 |
--debug |
啟用調試模式,輸出詳細日志。 |
--quiet |
安靜模式,減少日志輸出。 |
4. 驗證啟動是否成功
- 查看控制臺輸出:
- 啟動成功后,Logstash 會顯示類似以下信息:
plaintext?????
[INFO ] 2023-05-01T12:00:00.000Z logstash.runner - Logstash started successfully
?
- 啟動成功后,Logstash 會顯示類似以下信息:
- 檢查監聽端口:
- 若配置了 HTTP 輸入(如端口
5044
),可使用以下命令驗證:bash?????netstat -tulpn | grep 5044 # Linux/macOS
?powershell?????Get-NetTCPConnection | Where-Object LocalPort -eq 5044 # Windows
?
- 若配置了 HTTP 輸入(如端口
5. 配置文件示例
假設
logstash.conf
內容如下:?
conf
?
?
?
?
?
input {
file {
path => "/var/log/syslog"
start_position => "beginning"
}
}
filter {
grok {
match => { "message" => "%{SYSLOGTIMESTAMP:timestamp} %{SYSLOGHOST:host} %{DATA:program}(?:\[%{POSINT:pid}\])?: %{GREEDYDATA:message}" }
}
}
output {
stdout { codec => rubydebug }
elasticsearch {
hosts => ["localhost:9200"]
index => "logstash-%{+YYYY.MM.dd}"
}
}
?
常見問題
-
Java 版本不兼容:
- 確保 Java 版本為 8 或 11,可通過
java -version
檢查。
- 確保 Java 版本為 8 或 11,可通過
-
權限問題:
- Linux 系統中,確保 Logstash 有讀取日志文件的權限。
-
配置語法錯誤:
- 使用
-t
參數測試配置文件:bash?????./bin/logstash -t -f /path/to/config.conf
?
- 使用
-
端口被占用:
- 檢查并關閉占用相同端口的其他服務。
?
通過以上步驟,你可以使用命令行啟動 Logstash 并開始收集解析日志數據。根據實際需求調整配置文件即可。
文章鏈接: http://www.qzkangyuan.com/36311.html
文章標題:怎樣使用命令行啟動Logstash
文章版權:夢飛科技所發布的內容,部分為原創文章,轉載請注明來源,網絡轉載文章如有侵權請聯系我們!
聲明:本站所有文章,如無特殊說明或標注,均為本站原創發布。任何個人或組織,在未征得本站同意時,禁止復制、盜用、采集、發布本站內容到任何網站、書籍等各類媒體平臺。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。